//package com.slt.developkitweb.config.redis;
//
//import lombok.extern.slf4j.Slf4j;
//import org.apache.commons.lang3.StringUtils;
//
//import java.io.ByteArrayInputStream;
//import java.io.IOException;
//import java.io.ObjectInputStream;
//import java.io.UnsupportedEncodingException;
//import java.net.URLDecoder;
//import java.nio.charset.StandardCharsets;
//import java.util.regex.Matcher;
//import java.util.regex.Pattern;
//
//@Slf4j
//public class DecoderUtils {
//
//    private static final String pattern = "\\{\"skuName\"(.*)}";
//
//    public static String hex2UTF8(String hexStr) {
//
//        String s = hexStr.replaceAll("\\\\x", "%")
//                .replaceAll("%AC%ED%00%05t%00%15", "")
//                .replaceAll("%AC%ED%00%05t%00%07", "")
//                .replaceAll("%AC%ED%00%05t%00'", "")
//                .replaceAll("%AC%ED%00%05t%00", "")
//                .replaceAll("%(?![0-9a-fA-F]{2})", "%25");
//        try {
//            return URLDecoder.decode(s, StandardCharsets.UTF_8.name());
//        } catch (UnsupportedEncodingException e) {
//            log.info("hex2UTF8 转换异常======>" + hexStr);
//        }
//        return null;
//    }
//    public static Object deserialize(byte[] data) throws IOException, ClassNotFoundException {
//        ByteArrayInputStream in = new ByteArrayInputStream(data);
//        ObjectInputStream is = new ObjectInputStream(in);
//        return is.readObject();
//    }
//    public static void main(String[] args) {
//        Pattern p = Pattern.compile(pattern);
//        String str = "\\xAC\\xED\\x00\\x05sr\\x00(com.cmdi.b2bjoy.common.cache.CacheObject\\x0BA\\xCF\\x83\\xC7w\\x0F4\\x02\\x00\\x06L\\x00\\x0AappContextt\\x00\\x12Ljava/lang/String;L\\x00\\x0AinsertTimeq\\x00~\\x00\\x01L\\x00\\x02ipq\\x00~\\x00\\x01L\\x00\\x03keyq\\x00~\\x00\\x01L\\x00\\x06objectt\\x00\\x12Ljava/lang/Object;L\\x00\\x06userIdq\\x00~\\x00\\x01xpt\\x00\\x0Ebalanceservicet\\x00\\x102023-11-06-10:38t\\x00\\x0B10.4.73.133t\\x00\\x10AIRPORT_CODE_MAPsr\\x00\\x11java.util.HashMap\\x05\\x07\\xDA\\xC1\\xC3\\x16`\\xD1\\x03\\x00\\x02F\\x00\\x0AloadFactorI\\x00\tthresholdxp?@\\x00\\x00\\x00\\x00\\x01\\x80w\\x08\\x00\\x00\\x02\\x00\\x00\\x00\\x01\\x01t\\x00\\x03NZLt\\x00\\x07NZL|NZLt\\x00\\x03ZQZt\\x00\\x07ZQZ|ZQZt\\x00\\x03CDEt\\x00\\x07CDE|CDEt\\x00\\x03CTUt\\x00\\x07CTU|CTUt\\x00\\x03ZATt\\x00\\x07ZAT|ZATt\\x00\\x03MXZt\\x00\\x07MXZ|MXZt\\x00\\x03TVSt\\x00\\x07TVS|TVSt\\x00\\x03BSDt\\x00\\x07BSD|BSDt\\x00\\x03HNYt\\x00\\x07HNY|HNYt\\x00\\x03LFQt\\x00\\x07LFQ|LFQt\\x00\\x03AQGt\\x00\\x07AQG|AQGt\\x00\\x03XNNt\\x00\\x07XNN|XNNt\\x00\\x03XNTt\\x00\\x07XNT|XNTt\\x00\\x03JSJt\\x00\\x07JSJ|JMUt\\x00\\x03TFUt\\x00\\x07TFU|CTUt\\x00\\x03IQMt\\x00\\x07IQM|J10t\\x00\\x03IQNt\\x00\\x07IQN|IQNt\\x00\\x03GMQt\\x00\\x07GMQ|b90t\\x00\\x03MIGt\\x00\\x07MIG|MIGt\\x00\\x03UYNt\\x00\\x07UYN|UYNt\\x00\\x03NKGt\\x00\\x07NKG|NKGt\\x00\\x03DGMt\\x00\\x07DGM|DGMt\\x00\\x03AATt\\x00\\x07AAT|AATt\\x00\\x03LXAt\\x00\\x07LXA|LXAt\\x00\\x03ZCAt\\x00\\x07ZCA|g19t\\x00\\x03TGOt\\x00\\x07TGO|TGOt\\x00\\x03HPGt\\x00\\x07HPG|HPGt\\x00\\x03WMTt\\x00\\x07WMT|ZYIt\\x00\\x03EJNt\\x00\\x07EJN|EJNt\\x00\\x03TXNt\\x00\\x07TXN|TXNt\\x00\\x03NLHt\\x00\\x07NLH|LJGt\\x00\\x03LHKt\\x00\\x07LHK|LHKt\\x00\\x03WNHt\\x00\\x07WNH|WNHt\\x00\\x03DYGt\\x00\\x07DYG|DYGt\\x00\\x03LYAt\\x00\\x07LYA|LYAt\\x00\\x03CWJt\\x00\\x07CWJ|CWJt\\x00\\x03NLTt\\x00\\x07NLT|h69t\\x00\\x03KWEt\\x00\\x07KWE|KWEt\\x00\\x03LHWt\\x00\\x07LHW|LHWt\\x00\\x03LYGt\\x00\\x07LYG|LYGt\\x00\\x03SWAt\\x00\\x07SWA|SWAt\\x00\\x03THQt\\x00\\x07THQ|THQt\\x00\\x03JUHt\\x00\\x07JUH|JUHt\\x00\\x03LYIt\\x00\\x07LYI|LYIt\\x00\\x03CGDt\\x00\\x07CGD|CGDt\\x00\\x03JDZt\\x00\\x07JDZ|JDZt\\x00\\x03KWLt\\x00\\x07KWL|KWLt\\x00\\x03WNZt\\x00\\x07WNZ|WNZt\\x00\\x03DIGt\\x00\\x07DIG|DIGt\\x00\\x03YBPt\\x00\\x07YBP|YBPt\\x00\\x03GOQt\\x00\\x07GOQ|m12t\\x00\\x03TYNt\\x00\\x07TYN|TYNt\\x00\\x03CGOt\\x00\\x07CGO|CGOt\\x00\\x03CGQt\\x00\\x07CGQ|CGQt\\x00\\x03ZUHt\\x00\\x07ZUH|ZUHt\\x00\\x03JUZt\\x00\\x07JUZ|JUZt\\x00\\x03HAKt\\x00\\x07HAK|HAKt\\x00\\x03YSQt\\x00\\x07YSQ|f99t\\x00\\x03ACXt\\x00\\x07ACX|e98t\\x00\\x03HRBt\\x00\\x07HRB|HRBt\\x00\\x03KGTt\\x00\\x07KGT|b59t\\x00\\x03QSZt\\x00\\x07QSZ|CN3t\\x00\\x03LZHt\\x00\\x07LZH|LZHt\\x00\\x03LZOt\\x00\\x07LZO|LZOt\\x00\\x03XAIt\\x00\\x07XAI|XAIt\\x00\\x03LZNt\\x00\\x07LZN|MFKt\\x00\\x03CHGt\\x00\\x07CHG|CHGt\\x00\\x03NNGt\\x00\\x07NNG|NNGt\\x00\\x03BFJt\\x00\\x07BFJ|BFJt\\x00\\x03LJGt\\x00\\x07LJG|LJGt\\x00\\x03YCUt\\x00\\x07YCU|YCUt\\x00\\x03LZYt\\x00\\x07LZY|LZYt\\x00\\x03KHGt\\x00\\x07KHG|KHGt\\x00\\x03SHAt\\x00\\x07SHA|SHAt\\x00\\x03SHFt\\x00\\x07SHF|SHFt\\x00\\x03BFUt\\x00\\x07BFU|BFUt\\x00\\x03KHNt\\x00\\x07KHN|KHNt\\x00\\x03SHEt\\x00\\x07SHE|SHEt\\x00\\x03CHWt\\x00\\x07CHW|CHWt\\x00\\x03HBQt\\x00\\x07HBQ|m10t\\x00\\x03NNYt\\x00\\x07NNY|NNYt\\x00\\x03HSCt\\x00\\x07HSC|HSCt\\x00\\x03FOCt\\x00\\x07FOC|FOCt\\x00\\x03AEBt\\x00\\x07AEB|AEBt\\x00\\x03YTYt\\x00\\x07YTY|YTYt\\x00\\x03SHSt\\x00\\x07SHS|d15t\\x00\\x03CIFt\\x00\\x07CIF|CIFt\\x00\\x03HSNt\\x00\\x07HSN|HSNt\\x00\\x03CIHt\\x00\\x07CIH|CIHt\\x00\\x03YUAt\\x00\\x07YUA|a69t\\x00\\x03SYMt\\x00\\x07SYM|SYMt\\x00\\x03JGDt\\x00\\x07JGD|a82t\\x00\\x03AVAt\\x00\\x07AVA|AVAt\\x00\\x03HCJt\\x00\\x07HCJ|HCJt\\x00\\x03JGNt\\x00\\x07JGN|JGNt\\x00\\x03JXAt\\x00\\x07JXA|JXAt\\x00\\x03SYXt\\x00\\x07SYX|SYXt\\x00\\x03YUSt\\x00\\x07YUS|YUSt\\x00\\x03JGSt\\x00\\x07JGS|KNCt\\x00\\x03DLCt\\x00\\x07DLC|DLCt\\x00\\x03ENHt\\x00\\x07ENH|ENHt\\x00\\x03CZXt\\x00\\x07CZX|CZXt\\x00\\x03HTNt\\x00\\x07HTN|HTNt\\x00\\x03LLBt\\x00\\x07LLB|r48t\\x00\\x03LLFt\\x00\\x07LLF|LLFt\\x00\\x03JHGt\\x00\\x07JHG|JHGt\\x00\\x03KJHt\\x00\\x07KJH|R47t\\x00\\x03HTTt\\x00\\x07HTT|m12t\\x00\\x03HDGt\\x00\\x07HDG|HDGt\\x00\\x03KJIt\\x00\\x07KJI|a43t\\x00\\x03DLUt\\x00\\x07DLU|Z15t\\x00\\x03SZXt\\x00\\x07SZX|SZXt\\x00\\x03ENYt\\x00\\x07ENY|ENYt\\x00\\x03BHYt\\x00\\x07BHY|BHYt\\x00\\x03ZHAt\\x00\\x07ZHA|ZHAt\\x00\\x03LLVt\\x00\\x07LLV|LLVt\\x00\\x03TLQt\\x00\\x07TLQ|TLQt\\x00\\x03CKGt\\x00\\x07CKG|CKGt\\x00\\x03RHTt\\x00\\x07RHT|Z13t\\x00\\x03SJWt\\x00\\x07SJW|SJWt\\x00\\x03HUOt\\x00\\x07HUO|HUOt\\x00\\x03JICt\\x00\\x07JIC|JICt\\x00\\x03ZHYt\\x00\\x07ZHY|ZHYt\\x00\\x03ZYIt\\x00\\x08ZYI|T8YWt\\x00\\x03HUZt\\x00\\x07HUZ|HUZt\\x00\\x03JILt\\x00\\x07JIL|JILt\\x00\\x03HEKt\\x00\\x07HEK|HEKt\\x00\\x03AXFt\\x00\\x07AXF|Z13t\\x00\\x03JIQt\\x00\\x07JIQ|CKGt\\x00\\x03HETt\\x00\\x07HET|HETt\\x00\\x03JIUt\\x00\\x07JIU|JIUt\\x00\\x03PEKt\\x00\\x07PEK|BJSt\\x00\\x03JZHt\\x00\\x07JZH|a01t\\x00\\x03XUZt\\x00\\x07XUZ|XUZt\\x00\\x03NAOt\\x00\\x07NAO|NAOt\\x00\\x03DNHt\\x00\\x07DNH|DNHt\\x00\\x03PVGt\\x00\\x07PVG|SHAt\\x00\\x03XENt\\x00\\x07XEN|c35t\\x00\\x03RIZt\\x00\\x07RIZ|RIZt\\x00\\x03AHJt\\x00\\x07AHJ|a01t\\x00\\x03HFEt\\x00\\x07HFE|HFEt\\x00\\x03TNAt\\x00\\x07TNA|TNAt\\x00\\x03NAYt\\x00\\x07NAY|BJSt\\x00\\x03LNJt\\x00\\x07LNJ|LNJt\\x00\\x03LNLt\\x00\\x07LNL|d93t\\x00\\x03JJNt\\x00\\x07JJN|JJNt\\x00\\x03TNHt\\x00\\x07TNH|TNHt\\x00\\x03AYNt\\x00\\x07AYN|AYNt\\x00\\x03NBSt\\x00\\x07NBS|NBSt\\x00\\x03YYAt\\x00\\x07YYA|MIGt\\x00\\x03XFNt\\x00\\x07XFN|XFNt\\x00\\x03WUAt\\x00\\x07WUA|WUAt\\x00\\x03KMGt\\x00\\x07KMG|KMGt\\x00\\x03WDSt\\x00\\x07WDS|WDSt\\x00\\x03HGHt\\x00\\x07HGH|HGHt\\x00\\x03WUHt\\x00\\x07WUH|WUHt\\x00\\x03DOYt\\x00\\x07DOY|DOYt\\x00\\x03YICt\\x00\\x07YIC|YICt\\x00\\x03WUSt\\x00\\x07WUS|e52t\\x00\\x03YIEt\\x00\\x07YIE|v18t\\x00\\x03HXDt\\x00\\x07HXD|m12t\\x00\\x03WUTt\\x00\\x07WUT|WUTt\\x00\\x03WEFt\\x00\\x07WEF|WEFt\\x00\\x03YIHt\\x00\\x07YIH|YIHt\\x00\\x03WUXt\\x00\\x07WUX|WUXt\\x00\\x03WEHt\\x00\\x07WEH|WEHt\\x00\\x03WUZt\\x00\\x07WUZ|WUZt\\x00\\x03ERLt\\x00\\x07ERL|h10t\\x00\\x03CNIt\\x00\\x07CNI|DLCt\\x00\\x03YINt\\x00\\x07YIN|h69t\\x00\\x03RKZt\\x00\\x07RKZ|RKZt\\x00\\x03NTGt\\x00\\x07NTG|NTGt\\x00\\x03KNCt\\x00\\x07KNC|KNCt\\x00\\x03LPFt\\x00\\x07LPF|LPFt\\x00\\x03YIWt\\x00\\x07YIW|d02t\\x00\\x03URCt\\x00\\x07URC|URCt\\x00\\x03TPEt\\x00\\x07TPE|TPEt\\x00\\x03RLKt\\x00\\x07RLK|RLKt\\x00\\x03NDGt\\x00\\x07NDG|NDGt\\x00\\x03DQAt\\x00\\x07DQA|DQAt\\x00\\x03AKAt\\x00\\x07AKA|AKAt\\x00\\x03YZYt\\x00\\x07YZY|YZYt\\x00\\x03FUGt\\x00\\x07FUG|FUGt\\x00\\x03HYNt\\x00\\x07HYN|HYNt\\x00\\x03HIAt\\x00\\x07HIA|HIAt\\x00\\x03FUOt\\x00\\x07FUO|FUOt\\x00\\x03JMJt\\x00\\x07JMJ|JMJt\\x00\\x03XYIt\\x00\\x07XYI|XYIt\\x00\\x03AKUt\\x00\\x07AKU|AKUt\\x00\\x03KOWt\\x00\\x07KOW|KOWt\\x00\\x03JMUt\\x00\\x07JMU|JMUt\\x00\\x03XICt\\x00\\x07XIC|o72t\\x00\\x03HZGt\\x00\\x07HZG|HZGt\\x00\\x03UCBt\\x00\\x07UCB|UCBt\\x00\\x03DATt\\x00\\x07DAT|DATt\\x00\\x03GXHt\\x00\\x07GXH|b57t\\x00\\x03YKHt\\x00\\x07YKH|YKHt\\x00\\x03DAXt\\x00\\x07DAX|DAXt\\x00\\x03XILt\\x00\\x07XIL|h10t\\x00\\x03PZIt\\x00\\x07PZI|PZIt\\x00\\x03WGNt\\x00\\x07WGN|WGNt\\x00\\x03JNGt\\x00\\x07JNG|JNGt\\x00\\x03TAOt\\x00\\x07TAO|TAOt\\x00\\x03DBCt\\x00\\x07DBC|DBCt\\x00\\x03XIYt\\x00\\x07XIY|SIAt\\x00\\x03HJJt\\x00\\x07HJJ|HJJt\\x00\\x03GHNt\\x00\\x07GHN|GHNt\\x00\\x03WXNt\\x00\\x07WXN|CKGt\\x00\\x03OHEt\\x00\\x07OHE|a82t\\x00\\x03MDGt\\x00\\x07MDG|MDGt\\x00\\x03JNZt\\x00\\x07JNZ|JNZt\\x00\\x03YLNt\\x00\\x07YLN|YLNt\\x00\\x03DSNt\\x00\\x07DSN|DSNt\\x00\\x03GYSt\\x00\\x07GYS|GYSt\\x00\\x03GYUt\\x00\\x07GYU|GYUt\\x00\\x03TSApt\\x00\\x03WHUt\\x00\\x07WHU|WHUt\\x00\\x03HKGt\\x00\\x07HKG|HKGt\\x00\\x03SQDt\\x00\\x07SQD|f58t\\x00\\x03NGBt\\x00\\x07NGB|NGBt\\x00\\x03SQJt\\x00\\x07SQJ|f43t\\x00\\x03TSNt\\x00\\x07TSN|TSNt\\x00\\x03CANt\\x00\\x07CAN|CANt\\x00\\x03BPEt\\x00\\x07BPE|SHPt\\x00\\x03NGQt\\x00\\x07NGQ|NGQt\\x00\\x03TCGt\\x00\\x07TCG|TCGt\\x00\\x03DCYt\\x00\\x07DCY|b59t\\x00\\x03PKXt\\x00\\x07PKX|BJSt\\x00\\x03INCt\\x00\\x07INC|INCt\\x00\\x03BPLt\\x00\\x07BPL|j39t\\x00\\x03LCXt\\x00\\x07LCX|LCXt\\x00\\x03HLDt\\x00\\x07HLD|HLDt\\x00\\x03KRLt\\x00\\x07KRL|J10t\\x00\\x03DTUt\\x00\\x07DTU|HEKt\\x00\\x03HLHt\\x00\\x07HLH|v18t\\x00\\x03DDGt\\x00\\x07DDG|DDGt\\x00\\x03TCZt\\x00\\x07TCZ|BSDt\\x00\\x03BPXt\\x00\\x07BPX|BPXt\\x00\\x03KRYt\\x00\\x07KRY|KRYt\\x00\\x03YNJt\\x00\\x07YNJ|v48t\\x00\\x03MFMt\\x00\\x07MFM|MFMt\\x00\\x03FYJt\\x00\\x07FYJ|JMUt\\x00\\x03AOGt\\x00\\x07AOG|AOGt\\x00\\x03FYNt\\x00\\x07FYN|FYNt\\x00\\x03LDSt\\x00\\x07LDS|LDSt\\x00\\x03YNTt\\x00\\x07YNT|YNTt\\x00\\x03RQAt\\x00\\x07RQA|J10t\\x00\\x03YNZt\\x00\\x07YNZ|YNZt\\x00\\x03HMIt\\x00\\x07HMI|HMIt\\x00\\x03LUMt\\x00\\x07LUM|a97t\\x00\\x03KCAt\\x00\\x07KCA|AKUt\\x00\\x03CSXt\\x00\\x07CSX|CSXt\\x00\\x03BARt\\x00\\x07BAR|BARt\\x00\\x03BAVt\\x00\\x07BAV|BAVt\\x00\\x03XMNt\\x00\\x07XMN|XMNt\\x00\\x03TENt\\x00\\x07TEN|TENt\\x00\\x03NZHt\\x00\\x07NZH|c31xt\\x00 3afcffb7805f4d8ea775af6be7312eac";
//
//        String str2 = hex2UTF8(str);
//        if (StringUtils.isNotEmpty(str2)) {
//            Matcher m = p.matcher(str2);
//            if (m.find()) {
//                String jsonStr = m.group(0);
//                log.info(jsonStr);
//            }
//        }
//    }
//
////    public static void main(String[] args) {
////        String value = "\\xAC\\xED\\x00\\x05sr\\x00\\x0Ejava.lang.Long;\\x8B\\xE4\\x90\\xCC\\x8F#\\xDF\\x02\\x00\\x01J\\x00\\x05valuexr\\x00\\x10java.lang.Number\\x86\\xAC\\x95\\x1D\\x0B\\x94\\xE0\\x8B\\x02\\x00\\x00xp\\x00\\x00\\x00\\x00\\x00\\x00\\xD7";
////
////        try (ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream()) {
////            int i = 0;
////            while (i < value.length()) {
////                char ch = value.charAt(i);
////                if (ch == '\\') {
////                    if (value.charAt(i + 1) != 'x') {
////                        throw new UnsupportedOperationException();
////                    }
////                    String hex = value.substring(i + 2, i + 4);
////                    byteArrayOutputStream.write(Integer.parseInt(hex, 16) & 0xFF);
////                    i += 4;
////                } else {
////                    byteArrayOutputStream.write(ch);
////                    i++;
////                }
////            }
////
////            byte[] output = byteArrayOutputStream.toByteArray();
////            Long id = (Long) deserialize(output);
////            System.out.println(id);
////        } catch (IOException | ClassNotFoundException e) {
////            throw new RuntimeException(e);
////        }
////    }
//}
